//app主文件
const Koa = require("koa");
const bodyParser = require("koa-bodyparser");
const errorHandler = require("./error-handle");
const useRoutes = require("../router");

const app = new Koa();

app.use(bodyParser());

// 调用router.routes()来组装匹配好的路由，返回一个合并好的中间件
// 调用router.allowedMethods()获得一个中间件，当发送了不符合的请求时，
useRoutes(app);
//会返回 `405 Method Not Allowed` 或`501 Not Implemented`
//监听error事件，有error就调用errorHandler
app.on("error", errorHandler);

module.exports = app;
